Read Replica তৈরি এবং ব্যবহারের কৌশল

Database Tutorials - ডকুমেন্ট ডিবি (DocumentDB) DocumentDB এর Scalability এবং Replication |
200
200

Amazon DocumentDB Read Replica তৈরি করার মাধ্যমে আপনি আপনার ডেটাবেসের read-heavy অ্যাপ্লিকেশনের পারফরম্যান্স বৃদ্ধি করতে পারেন। Read Replica হল একটি ক্লাস্টারের একটি কপি যা read-only সিস্টেম হিসেবে কাজ করে, অর্থাৎ এটি শুধু read অপারেশনগুলো সম্পাদন করে এবং ডেটা পরিবর্তন করতে পারে না। এই পদ্ধতির মাধ্যমে read scaling এবং high availability নিশ্চিত করা যায়।


Read Replica তৈরি করা

DocumentDB এ Read Replica তৈরি করার জন্য কিছু সহজ ধাপ অনুসরণ করতে হয়। এখানে ধাপে ধাপে প্রক্রিয়া বর্ণনা করা হলো:

১. AWS Management Console এ লগইন করুন

প্রথমে আপনার AWS অ্যাকাউন্টে লগইন করুন।

২. Amazon DocumentDB সেবা নির্বাচন করুন

AWS Management Console এর সার্চ বক্সে "DocumentDB" লিখে সার্চ করুন অথবা Services মেনু থেকে Amazon DocumentDB নির্বাচন করুন।

৩. ক্লাস্টার নির্বাচন করুন

DocumentDB কনসোল থেকে, আপনি যে ক্লাস্টারের Read Replica তৈরি করতে চান, সেই ক্লাস্টার নির্বাচন করুন।

৪. Create Read Replica অপশন নির্বাচন করুন

  • ক্লাস্টার পৃষ্ঠায় গিয়ে, Actions মেনু থেকে Create Read Replica অপশনটি নির্বাচন করুন।

৫. Replica ইনস্ট্যান্স কনফিগারেশন

  • Instance Class: আপনি কোন ইনস্ট্যান্স টাইপ ব্যবহার করতে চান তা নির্বাচন করুন (যেমন db.r5.large অথবা অন্য কোন টাইপ)।
  • Availability Zone: Replica ইনস্ট্যান্স কোথায় থাকবে তা নির্ধারণ করুন (যেমন, অন্য একটি Availability Zone)।
  • VPC এবং Security Group: আপনার Replica ইনস্ট্যান্সের জন্য VPC এবং Security Group নির্বাচন করুন।

৬. Create Read Replica

সব সেটিং কনফিগার করার পরে, Create Read Replica বাটনে ক্লিক করুন। আপনার Read Replica তৈরি হতে কিছু সময় নিতে পারে।


Read Replica ব্যবহারের কৌশল

Read Replica ব্যবহারের মাধ্যমে আপনি read-heavy workloads এর জন্য স্কেলিং করতে পারবেন। এটি আপনার ডেটাবেসের পারফরম্যান্স উন্নত করতে সহায়ক। নিচে কিছু কৌশল দেয়া হল যা আপনি Read Replica ব্যবহারের সময় বিবেচনা করতে পারেন:

১. Read Replica দিয়ে Read Scaling

  • Read Scaling হল যখন আপনার অ্যাপ্লিকেশন একটি ডাটাবেসে অনেক read queries চালাচ্ছে, এবং আপনি Replica ইনস্ট্যান্স ব্যবহার করে ডেটাবেসের লোড ভাগ করে নেবেন।
  • Read Replica সাধারণত only read operations পরিচালনা করে। তাই আপনি primary instance এর উপর থেকে read load কমিয়ে Replica ইনস্ট্যান্সে শিফট করতে পারেন।

উদাহরণ: আপনার অ্যাপ্লিকেশন যদি user data পড়ার জন্য কুয়েরি চালায়, তবে আপনি Read Replica ব্যবহার করতে পারেন যাতে মূল primary instance এ কোনো চাপ না পরে।

// Read Replica endpoint ব্যবহার করে MongoDB কম্প্যাটিবল ক্লায়েন্টের মাধ্যমে কুয়েরি
const replicaEndpoint = "<Read Replica Endpoint>";
const db = client.connect(replicaEndpoint);
const result = db.collection("users").find({ age: { $gt: 18 } });

২. Load Balancing

Read Replica ব্যবহারের সময় load balancing কৌশল ব্যবহার করা গুরুত্বপূর্ণ, বিশেষ করে যখন অনেক Replica ইনস্ট্যান্স থাকে। আপনি অ্যাপ্লিকেশনের load balancer ব্যবহার করে read requests গুলিকে বিভিন্ন Replica ইনস্ট্যান্সে বিতরণ করতে পারেন।

৩. High Availability এবং Failover

Read Replica গুলি high availability নিশ্চিত করতে সহায়ক, কারণ যদি primary instance কোনো কারণে ডাউন হয়ে যায়, তখন Read Replica গুলি failover হতে পারে। এইভাবে, আপনার অ্যাপ্লিকেশন সর্বদা চালু থাকবে এবং data consistency বজায় থাকবে।

  • Failover: যদি primary instance কোনো কারণে কাজ করতে না পারে, তাহলে Read Replica গুলির মধ্যে একটি Replica Promote করে Primary instance হিসেবে পরিণত করা হয়।

৪. Read Replica ব্যবহার করে Read-Heavy অ্যাপ্লিকেশন চালানো

যেকোনো অ্যাপ্লিকেশন যেখানে ডেটার উপর অনেক বার read অপারেশন করা হয়, সেখানে Read Replica ব্যবহার করা উচিত। উদাহরণস্বরূপ:

  • Reporting systems: যেখানে ব্যবহারকারীরা প্রচুর পরিমাণে ডেটা দেখতে চান।
  • Analytics apps: যেখানে ব্যবহারকারীরা ডেটা বিশ্লেষণ করে থাকেন।

৫. Replica Promotion

যদি কোনো কারণে Read Replica কে primary instance হিসেবে promote করতে হয়, তবে আপনি AWS Console অথবা AWS CLI এর মাধ্যমে এটি করতে পারবেন।

Replica Promote Example (AWS CLI):

aws docdb promote-replica-to-primary --db-cluster-identifier <cluster-id> --db-instance-identifier <replica-id>

এই কমান্ডটি একটি Replica ইনস্ট্যান্সকে primary instance হিসেবে প্রোমোট করবে।


কিছু গুরুত্বপূর্ণ বিষয়

  • Replication Lag: Read Replica-তে কখনও কখনও replication lag হতে পারে, অর্থাৎ প্রাইমারি ইনস্ট্যান্সে যেসব পরিবর্তন হয়, তা Read Replica তে পৌঁছাতে কিছু সময় নিতে পারে। এটি খেয়াল রাখতে হবে, বিশেষ করে যদি আপনার অ্যাপ্লিকেশন real-time ডেটা প্রয়োজন করে।
  • Consistency: Read Replica তে ডেটা eventual consistency প্রদানে সক্ষম। যদি আপনার অ্যাপ্লিকেশন strong consistency চায়, তবে আপনি প্রাইমারি ইনস্ট্যান্স ব্যবহার করবেন।

সারাংশ

Read Replica তৈরি এবং ব্যবহারের মাধ্যমে আপনি আপনার DocumentDB ক্লাস্টারের পারফরম্যান্স ও অ্যাভেইলেবিলিটি উন্নত করতে পারেন। এটি read-heavy অ্যাপ্লিকেশনগুলির জন্য একটি গুরুত্বপূর্ণ কৌশল, এবং ক্লাস্টার স্কেলিং, লোড ব্যালান্সিং, এবং হাই অ্যাভেইলেবিলিটি নিশ্চিত করার জন্য ব্যবহৃত হয়। Read Replica-র মাধ্যমে failoverreplication lag এর মত বিষয়গুলোও ম্যানেজ করা সম্ভব।

common.content_added_by
টপ রেটেড অ্যাপ

স্যাট অ্যাকাডেমী অ্যাপ

আমাদের অল-ইন-ওয়ান মোবাইল অ্যাপের মাধ্যমে সীমাহীন শেখার সুযোগ উপভোগ করুন।

ভিডিও
লাইভ ক্লাস
এক্সাম
ডাউনলোড করুন
Promotion